home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / src / linux-headers-2.6.28-15 / arch / arm / mach-ixp4xx / include / mach / npe.h < prev    next >
Encoding:
C/C++ Source or Header  |  2008-12-24  |  977 b   |  40 lines

  1. #ifndef __IXP4XX_NPE_H
  2. #define __IXP4XX_NPE_H
  3.  
  4. #include <linux/kernel.h>
  5.  
  6. extern const char *npe_names[];
  7.  
  8. struct npe_regs {
  9.     u32 exec_addr, exec_data, exec_status_cmd, exec_count;
  10.     u32 action_points[4];
  11.     u32 watchpoint_fifo, watch_count;
  12.     u32 profile_count;
  13.     u32 messaging_status, messaging_control;
  14.     u32 mailbox_status, /*messaging_*/ in_out_fifo;
  15. };
  16.  
  17. struct npe {
  18.     struct resource *mem_res;
  19.     struct npe_regs __iomem *regs;
  20.     u32 regs_phys;
  21.     int id;
  22.     int valid;
  23. };
  24.  
  25.  
  26. static inline const char *npe_name(struct npe *npe)
  27. {
  28.     return npe_names[npe->id];
  29. }
  30.  
  31. int npe_running(struct npe *npe);
  32. int npe_send_message(struct npe *npe, const void *msg, const char *what);
  33. int npe_recv_message(struct npe *npe, void *msg, const char *what);
  34. int npe_send_recv_message(struct npe *npe, void *msg, const char *what);
  35. int npe_load_firmware(struct npe *npe, const char *name, struct device *dev);
  36. struct npe *npe_request(int id);
  37. void npe_release(struct npe *npe);
  38.  
  39. #endif /* __IXP4XX_NPE_H */
  40.